package com.zcn.io.common.config;

/**
 * @desc:
 * @author: 202438 邱建伟
 * @date: 2024/9/20 8:21
 * @Copyright (c) 2024, 江苏金恒信息科技股份有限公司
 */

import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.context.annotation.Configuration;

import java.time.LocalDateTime;

/**
 * mybatis-plus自动填充策略设置
 */
@Slf4j
@Configuration
public class DatetimeMetaObjectHandler implements MetaObjectHandler {
    //进行插入时填充策略
    @Override
    public void insertFill(MetaObject metaObject) {
        log.info("mybatis-plus 开始在你插入的时候 字段填充字段......");
        this.setFieldValByName("createTime", LocalDateTime.now(), metaObject);
        this.setFieldValByName("updateTime", LocalDateTime.now(), metaObject);
    }

    //进行修改操作时填充策略
    @Override
    public void updateFill(MetaObject metaObject) {
        log.info("mybatis-plus 开始在你修改的时候 字段填充字段......");
        this.setFieldValByName("updateTime", LocalDateTime.now(), metaObject);
    }
}
